package com.provafinal.service;

import com.provafinal.dao.AcessoDAO;
import com.provafinal.entity.Acesso;
import java.util.List;
import javax.inject.Inject;
import javax.validation.ValidationException;

public class AcessoService extends Service {

    @Inject
    private AcessoDAO acessoDAO;

    public void salvar(Acesso acesso) throws ValidationException {
        try {
            beginTransaction();
            acessoDAO.salvar(acesso);
            commitTransaction();
        } catch (RuntimeException e) {
            rollBackTransaction();
            throw e;
        }
    }

    public void alterar(Acesso acesso) throws ValidationException {
        try {
            beginTransaction();
            acessoDAO.alterar(acesso);
            commitTransaction();
        } catch (RuntimeException e) {
            rollBackTransaction();
            throw e;
        }
    }

    public void excluir(Integer acessoId) throws ValidationException {
        try {
            beginTransaction();
            Acesso acesso = acessoDAO.carregar(acessoId, Acesso.class);
            acessoDAO.excluir(acesso);
            commitTransaction();
        } catch (RuntimeException e) {
            rollBackTransaction();
            throw e;
        }
    }

    public List<Acesso> listarAcesso() {
        System.out.println("_-_-_- ListarAcessoService");
        return acessoDAO.listarAcesso();
    }

}
